package com.chinatechstar.notification.entity;

import java.sql.Timestamp;

import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

/**
 * 消息表(sys_msg)
 *
 * @author Rei
 * @version 1.0.0 2021-03-04
 */
public class SysMsg implements java.io.Serializable {
    /**
     * 版本号
     */
    private static final long serialVersionUID = -7863516006666155718L;

    /* This code was generated by TableGo tools, mark 1 begin. */

    /**
     * 消息主键ID
     */
    private Long id;

    /**
     * 消息发送人ID
     */
    private Long msgFromUserId;

    /**
     * 消息发送人Username
     */
    private String msgFromUsername;

    /**
     * 消息发送人Nickname
     */
    private String msgFromNickname;

    /**
     * 消息发送人头像
     */
    private String msgFromUserProfilePhoto;

    /**
     * 消息目标用户ID
     */
    private Long msgToUserId;

    /**
     * 消息目标用户Username
     */
    private String msgToUsername;

    /**
     * 消息目标用户Nickname
     */
    private String msgToNickname;

    /**
     * 消息目标用户头像
     */
    private String msgToUserProfilePhoto;

    /**
     * 消息类型（dict）
     */
    private String msgType;

    /**
     * 消息状态(1-已读；2-未读)
     */
    private Integer msgStatus;

    /**
     * 消息标题
     */
    private String msgTitle;

    /**
     * 消息内容
     */
    private String msgContent;

    /**
     * 消息发送时间
     */
    private Timestamp msgSendTime;

    /**
     * 消息接收时间（阅读消息时间）
     */
    private Timestamp msgReceiveTime;

    /**
     * 自定义动作
     */
    private String msgAction;

    /**
     * 自定义动作参数
     */
    private String msgActionParam;

    /* This code was generated by TableGo tools, mark 1 end. */

    /* This code was generated by TableGo tools, mark 2 begin. */

    /**
     * 获取消息主键ID
     *
     * @return 消息主键ID
     */
    public Long getId() {
        return this.id;
    }

    /**
     * 设置消息主键ID
     *
     * @param id 消息主键ID
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取消息发送人ID
     *
     * @return 消息发送人ID
     */
    public Long getMsgFromUserId() {
        return this.msgFromUserId;
    }

    /**
     * 设置消息发送人ID
     *
     * @param msgFromUserId 消息发送人ID
     */
    public void setMsgFromUserId(Long msgFromUserId) {
        this.msgFromUserId = msgFromUserId;
    }

    /**
     * 获取消息发送人Username
     *
     * @return 消息发送人Username
     */
    public String getMsgFromUsername() {
        return this.msgFromUsername;
    }

    /**
     * 设置消息发送人Username
     *
     * @param msgFromUsername 消息发送人Username
     */
    public void setMsgFromUsername(String msgFromUsername) {
        this.msgFromUsername = msgFromUsername;
    }

    /**
     * 获取消息发送人Nickname
     *
     * @return 消息发送人Nickname
     */
    public String getMsgFromNickname() {
        return this.msgFromNickname;
    }

    /**
     * 设置消息发送人Nickname
     *
     * @param msgFromNickname 消息发送人Nickname
     */
    public void setMsgFromNickname(String msgFromNickname) {
        this.msgFromNickname = msgFromNickname;
    }

    /**
     * 获取消息发送人头像
     *
     * @return 消息发送人头像
     */
    public String getMsgFromUserProfilePhoto() {
        return this.msgFromUserProfilePhoto;
    }

    /**
     * 设置消息发送人头像
     *
     * @param msgFromUserProfilePhoto 消息发送人头像
     */
    public void setMsgFromUserProfilePhoto(String msgFromUserProfilePhoto) {
        this.msgFromUserProfilePhoto = msgFromUserProfilePhoto;
    }

    /**
     * 获取消息目标用户ID
     *
     * @return 消息目标用户ID
     */
    public Long getMsgToUserId() {
        return this.msgToUserId;
    }

    /**
     * 设置消息目标用户ID
     *
     * @param msgToUserId 消息目标用户ID
     */
    public void setMsgToUserId(Long msgToUserId) {
        this.msgToUserId = msgToUserId;
    }

    /**
     * 获取消息目标用户Username
     *
     * @return 消息目标用户Username
     */
    public String getMsgToUsername() {
        return this.msgToUsername;
    }

    /**
     * 设置消息目标用户Username
     *
     * @param msgToUsername 消息目标用户Username
     */
    public void setMsgToUsername(String msgToUsername) {
        this.msgToUsername = msgToUsername;
    }

    /**
     * 获取消息目标用户Nickname
     *
     * @return 消息目标用户Nickname
     */
    public String getMsgToNickname() {
        return this.msgToNickname;
    }

    /**
     * 设置消息目标用户Nickname
     *
     * @param msgToNickname 消息目标用户Nickname
     */
    public void setMsgToNickname(String msgToNickname) {
        this.msgToNickname = msgToNickname;
    }

    /**
     * 获取消息目标用户头像
     *
     * @return 消息目标用户头像
     */
    public String getMsgToUserProfilePhoto() {
        return this.msgToUserProfilePhoto;
    }

    /**
     * 设置消息目标用户头像
     *
     * @param msgToUserProfilePhoto 消息目标用户头像
     */
    public void setMsgToUserProfilePhoto(String msgToUserProfilePhoto) {
        this.msgToUserProfilePhoto = msgToUserProfilePhoto;
    }

    /**
     * 获取消息类型（dict）
     *
     * @return 消息类型（dict）
     */
    public String getMsgType() {
        return this.msgType;
    }

    /**
     * 设置消息类型（dict）
     *
     * @param msgType 消息类型（dict）
     */
    public void setMsgType(String msgType) {
        this.msgType = msgType;
    }

    /**
     * 获取消息状态(1-已读；2-未读)
     *
     * @return 消息状态(1 - 已读 ； 2 - 未读)
     */
    public Integer getMsgStatus() {
        return this.msgStatus;
    }

    /**
     * 设置消息状态(1-已读；2-未读)
     *
     * @param msgStatus 消息状态(1-已读；2-未读)
     */
    public void setMsgStatus(Integer msgStatus) {
        this.msgStatus = msgStatus;
    }

    /**
     * 获取消息标题
     *
     * @return 消息标题
     */
    public String getMsgTitle() {
        return this.msgTitle;
    }

    /**
     * 设置消息标题
     *
     * @param msgTitle 消息标题
     */
    public void setMsgTitle(String msgTitle) {
        this.msgTitle = msgTitle;
    }

    /**
     * 获取消息内容
     *
     * @return 消息内容
     */
    public String getMsgContent() {
        return this.msgContent;
    }

    /**
     * 设置消息内容
     *
     * @param msgContent 消息内容
     */
    public void setMsgContent(String msgContent) {
        this.msgContent = msgContent;
    }

    /**
     * 获取消息发送时间
     *
     * @return 消息发送时间
     */
    public Timestamp getMsgSendTime() {
        return this.msgSendTime;
    }

    /**
     * 设置消息发送时间
     *
     * @param msgSendTime 消息发送时间
     */
    public void setMsgSendTime(Timestamp msgSendTime) {
        this.msgSendTime = msgSendTime;
    }

    /**
     * 获取消息接收时间（阅读消息时间）
     *
     * @return 消息接收时间（阅读消息时间）
     */
    public Timestamp getMsgReceiveTime() {
        return this.msgReceiveTime;
    }

    /**
     * 设置消息接收时间（阅读消息时间）
     *
     * @param msgReceiveTime 消息接收时间（阅读消息时间）
     */
    public void setMsgReceiveTime(Timestamp msgReceiveTime) {
        this.msgReceiveTime = msgReceiveTime;
    }

    /**
     * 获取自定义动作
     *
     * @return 自定义动作
     */
    public String getMsgAction() {
        return this.msgAction;
    }

    /**
     * 设置自定义动作
     *
     * @param msgAction 自定义动作
     */
    public void setMsgAction(String msgAction) {
        this.msgAction = msgAction;
    }

    /**
     * 获取自定义动作参数
     *
     * @return 自定义动作参数
     */
    public String getMsgActionParam() {
        return this.msgActionParam;
    }

    /**
     * 设置自定义动作参数
     *
     * @param msgActionParam 自定义动作参数
     */
    public void setMsgActionParam(String msgActionParam) {
        this.msgActionParam = msgActionParam;
    }

    /* This code was generated by TableGo tools, mark 2 end. */

    /* This code was generated by TableGo tools, mark 3 begin. */

    @Override
    public boolean equals(Object obj) {
        return EqualsBuilder.reflectionEquals(obj, this);
    }

    @Override
    public int hashCode() {
        return HashCodeBuilder.reflectionHashCode(this);
    }

    @Override
    public String toString() {
        return ReflectionToStringBuilder.toString(this);
    }

    /* This code was generated by TableGo tools, mark 3 end. */
}